Cloud computing can be described as Internet-based computing that provides shared computer processing resources, and data to computers and other devices on demand. Users can establish respective sessions, during which processing resources, and bandwidth are consumed. During a session, for example, a user is provided on-demand access to a shared pool of configurable computing resources (e.g., computer networks, servers, storage, applications, and services). The computing resources can be provisioned and released (e.g., scaled) to meet user demand.
In some instances, network traffic is modelled in an effort to predict demand to enable efficient provisioning of computing resources. Modelling of a session can be based on states of the respective sessions (e.g., whether a session is in an active state). A traditional architecture includes monolithic applications hosted on one or more servers, which can be accessed by respective users. Modelling user sessions in such traditional architectures is relatively straight-forward to perform, as user interactions are with a single application. Further, applications are modelled to predict software defects, in an effort to understand which component of the application is the source of the defect, and the type of defect that resulted in the failure.
A non-traditional architecture includes microservices, which have gained popularity in service oriented architectures (SOAs). In the microservice architecture, applications are composed of multiple, independent services, and are deployed in standalone containers with a well defined interfaces. The services are deployed and managed by a cloud platform, and run on top of a cloud infrastructure. However, the microservices are deployed and used by many different users (e.g., customers). Consequently, the microservices represent a security risk for the cloud provider. For example, a malicious user of the microservices can initiate an attack on the other microservices. Example attacks can include sending an unlimited request to cause denial of service (DoS) attacks, and targeting the underlying operating system, on which the cloud platform has been deployed. Further, modelling user sessions and predicting defects in non-traditional architectures, such as microservice architectures, are problematic.